package com.tudouji.project.pay.mapper;

import com.tudouji.project.pay.domain.Payinfo;

import java.util.List;

/**
 * 支付Mapper接口
 *
 * @author tudouji
 * @date 2021-04-06
 */
public interface PayinfoMapper
{
    /**
     * 查询支付
     *
     * @param guid 支付ID
     * @return 支付
     */
    public Payinfo selectPayinfoById(String guid);
    public Payinfo selectPayinfoDetailById(Long guid);
    public Payinfo selectPayinfoDetailOldById(Long guid);
    public Payinfo selectPayinfoByCode(String guid);
    public Payinfo selectPayinfoByParentPayinfoGuid(String guid);
    public Payinfo selectPayinfoByAutoId(Long guid);

    /**
     * 查询支付列表
     *
     * @param payinfo 支付
     * @return 支付集合
     */
    public List<Payinfo> selectPayinfoListOld(Payinfo payinfo);
    public List<Payinfo> selectPayinfoList(Payinfo payinfo);
    public List<Payinfo> selectPayinfoListFo(Payinfo payinfo);
    public List<Payinfo> selectPayinfoListFl(Payinfo payinfo);

    /**
     * 新增支付
     *
     * @param payinfo 支付
     * @return 结果
     */
    public int insertPayinfo(Payinfo payinfo);

    /**
     * 修改支付
     *
     * @param payinfo 支付
     * @return 结果
     */
    public int updatePayinfo(Payinfo payinfo);

    /**
     * 删除支付
     *
     * @param guid 支付ID
     * @return 结果
     */
    public int deletePayinfoById(String guid);

    /**
     * 批量删除支付
     *
     * @param guids 需要删除的数据ID
     * @return 结果
     */
    public int deletePayinfoByIds(String[] guids);

    List<Payinfo> selectApplyPendingList(Payinfo payinfo);

    int countApprovaling(String payinfoGuid);

    int selectPayinfoListCount(String payinfoGuid);
}
